home *** CD-ROM | disk | FTP | other *** search
Text File | 1995-10-27 | 11.6 KB | 416 lines | [TEXT/MPS ] |
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: :SOMobjects™ for Mac OS:MPW Additions:Interfaces:CIncludes:somcm.xh.
- * Generated using:
- * SOM Precompiler somipc: 2.18
- * SOM Emitter emitxh.dll: 2.33
- */
-
- /*
- *
- * Copyright: © 1994,1995 by Apple Computer, Inc.
- * All rights reserved.
- *
- * 10H9767, 10H9769 (C) COPYRIGHT International Business Machines Corp. 1992,1994
- * All Rights Reserved
- * Licensed Materials - Property of IBM
- * US Government Users Restricted Rights - Use, duplication or
- * disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- *
- * SOMClassMgr: System Object Model class manager
- */
-
-
- #ifndef SOM_SOMClassMgr_xh
- #define SOM_SOMClassMgr_xh
-
- class SOMClassMgr;
-
- #define SOMClassMgr_MajorVersion 70
- #define SOMClassMgr_MinorVersion 1
-
- /* C++ SOM defs */
- #include <somcls.xh>
-
- /* C++ parent defs */
- #ifndef SOM_SOMObject_xh
- #include <somobj.xh>
- #endif
-
- #ifndef SOMClassMgr_API
- #define SOMClassMgr_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class SOMClass;
- class SOMObject;
- class Repository;
- #ifndef _IDL_SEQUENCE_SOMClass_defined
- #define _IDL_SEQUENCE_SOMClass_defined
- typedef struct {
- unsigned long _maximum;
- unsigned long _length;
- SOMClass **_buffer;
- } _IDL_SEQUENCE_SOMClass;
- #endif /* _IDL_SEQUENCE_SOMClass_defined */
- typedef
- SOMClass* SOMClassMgr_SOMClassArray;
-
- /*
- * Used for SOM 1.0 binary compatibility
- */
-
- #ifndef SOM_DONT_USE_SHORT_NAMES
-
- #ifndef SOM_DONT_USE_SHORT_NAMES
- #ifndef SOMTGD_SOMClassArray
- #ifdef SOMClassArray
- #undef SOMClassArray
- #define SOMTGD_SOMClassArray 1
- #else
- #define SOMClassArray SOMClassMgr_SOMClassArray
- #endif /* SOMClassArray */
- #endif /* SOMTGD_SOMClassArray */
- #endif /* SOM_DONT_USE_SHORT_NAMES */
- #endif /* SOM_DONT_USE_SHORT_NAMES */
-
- /*
- * End of user-defined types.
- */
-
- #ifdef OLDIBMSOMAPISUPPORT
- #define SOMClassMgrCClassData SOMClassMgrClassData
- #define SOMClassMgrNewClass(major,minor) somNewVersionedClassReference(SOMClassMgr,major,minor)
- #endif
-
- /* define xxxMetaClass macro to facilitate (cls ## MetaClass) */
- #define SOMClassMgrMetaClass SOMClass
-
-
- /* The API to the SOMClassMgr class object, and the methods it introduces. */
- SOMEXTERN struct SOMClassMgrClassDataStructure {
- #ifdef OLDIBMSOMAPISUPPORT
- SOMClass *classObject; /* always zero, use somNewClassReference instead */
- #else
- long zero;
- #endif
- somStaticClassInfo *sci;
- somDToken instanceDataToken;
- long reserved [3];
- somMToken somFindClsInFile;
- somMToken somFindClass;
- somMToken somClassFromId;
- somMToken somRegisterClass;
- somMToken somRegisterClassLibrary;
- somMToken somUnregisterClass;
- somMToken somBeginPersistentClasses;
- somMToken somEndPersistentClasses;
- somMToken somJoinAffinityGroup;
- somMToken somLocateClassFile;
- somMToken somLoadClassFile;
- somMToken somUnloadClassFile;
- somMToken somGetInitFunction;
- somMToken somMergeInto;
- somMToken somSubstituteClass;
- somMToken _get_somInterfaceRepository;
- somMToken _set_somInterfaceRepository;
- somMToken _get_somRegisteredClasses;
- somMToken somGetRelatedClasses;
- somMToken somRegisterClassWatcher;
- somMToken somUnregisterClassWatcher;
- somMToken somNotifyClassWatchers;
- } SOMDLINK SOMClassMgrClassData;
-
- #if !defined(SOMClassMgr_Class_Source) && !defined(SOM_Module_somcm_Source)
- #if PRAGMA_IMPORT_SUPPORTED
- #pragma import list SOMClassMgrClassData
- #endif
- #endif
-
-
- /*
- * -- Typedefs and inline method declarations for left path inherited methods
- * -- are omitted because this compilation had -museinheritedmethods in effect
- */
-
-
- /*
- * -- Typedefs for SOMClassMgr Method Procedures
- */
- SOMEXTERN {
- typedef Repository* (* SOMLINK somTD_SOMClassMgr__get_somInterfaceRepository)(SOMClassMgr *somSelf);
- typedef void (* SOMLINK somTD_SOMClassMgr__set_somInterfaceRepository)(SOMClassMgr *somSelf,
- Repository* somInterfaceRepository);
- typedef SOMClass* (* SOMLINK somTD_SOMClassMgr_somClassFromId)(SOMClassMgr *somSelf,
- somId classId);
- typedef SOMClass* (* SOMLINK somTD_SOMClassMgr_somFindClass)(SOMClassMgr *somSelf,
- somId classId,
- long majorVersion,
- long minorVersion);
- typedef SOMClass* (* SOMLINK somTD_SOMClassMgr_somFindClsInFile)(SOMClassMgr *somSelf,
- somId classId,
- long majorVersion,
- long minorVersion,
- corbastring file);
- typedef long (* SOMLINK somTD_SOMClassMgr_somSubstituteClass)(SOMClassMgr *somSelf,
- corbastring origClassName,
- corbastring newClassName);
- typedef long (* SOMLINK somTD_SOMClassMgr_somUnregisterClass)(SOMClassMgr *somSelf,
- SOMClass* classObj);
- typedef SOMClass* (* SOMLINK somTD_SOMClassMgr_somLoadClassFile)(SOMClassMgr *somSelf,
- somId classId,
- long majorVersion,
- long minorVersion,
- corbastring file);
- typedef corbastring (* SOMLINK somTD_SOMClassMgr_somLocateClassFile)(SOMClassMgr *somSelf,
- somId classId,
- long majorVersion,
- long minorVersion);
- typedef corbastring (* SOMLINK somTD_SOMClassMgr_somGetInitFunction)(SOMClassMgr *somSelf);
- typedef void (* SOMLINK somTD_SOMClassMgr_somRegisterClass)(SOMClassMgr *somSelf,
- SOMClass* classObj);
- typedef long (* SOMLINK somTD_SOMClassMgr_somUnloadClassFile)(SOMClassMgr *somSelf,
- SOMClass* classObj);
- typedef _IDL_SEQUENCE_SOMClass (* SOMLINK somTD_SOMClassMgr__get_somRegisteredClasses)(SOMClassMgr *somSelf);
- typedef SOMClassMgr_SOMClassArray (* SOMLINK somTD_SOMClassMgr_somGetRelatedClasses)(SOMClassMgr *somSelf,
- SOMClass* classObj);
- typedef void (* SOMLINK somTD_SOMClassMgr_somMergeInto)(SOMClassMgr *somSelf,
- SOMObject* targetObj);
- typedef void (* SOMLINK somTD_SOMClassMgr_somRegisterClassLibrary)(SOMClassMgr *somSelf,
- corbastring libraryName,
- somMethodPtr libraryInitRtn);
- typedef void (* SOMLINK somTD_SOMClassMgr_somBeginPersistentClasses)(SOMClassMgr *somSelf);
- typedef void (* SOMLINK somTD_SOMClassMgr_somEndPersistentClasses)(SOMClassMgr *somSelf);
- typedef boolean (* SOMLINK somTD_SOMClassMgr_somJoinAffinityGroup)(SOMClassMgr *somSelf,
- SOMClass* newClass,
- SOMClass* affClass);
- typedef void (* SOMLINK somTD_SOMClassMgr_somRegisterClassWatcher)(SOMClassMgr *somSelf,
- somMethodPtr callMe,
- somToken cookie);
- typedef void (* SOMLINK somTD_SOMClassMgr_somUnregisterClassWatcher)(SOMClassMgr *somSelf,
- somMethodPtr callMe,
- somToken cookie);
- typedef void (* SOMLINK somTD_SOMClassMgr_somNotifyClassWatchers)(SOMClassMgr *somSelf,
- SOMClass* classObj,
- somToken mt,
- long watchCode);
- }
-
- #endif /* SOMClassMgr_API */
-
-
- /*
- * -- This emitter treats Method Tokens as Thunks by default.
- * -- Use the sc modifier "nothunks" to change this default
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * -- The C++ Wrapper Class for SOMClassMgr
- */
- class SOMClassMgr : public SOMObject
- {
- public:
-
- // SOMClassMgr::new registers use of the class object, and then uses somNew
- // to allocate memory and load the object method table pointer.
- void *operator new(size_t size)
- {
- SOM_IgnoreWarning(size);
- // Allocate memory using the default allocator for SOMClassMgr, and
- // clear mem & set method table pointer, call basic initialization
- return (void*) somNewObject(SOMClassMgr);
- }
-
- // SOMClassMgr::delete uses the default deallocator for the object's class.
- void operator delete(void * obj)
- {
- if (obj) {
- SOM_Resolve(obj,SOMObject,somFree)
- ( (SOMObject*) obj );
- }
- }
-
- /* method: _get_somInterfaceRepository */
- Repository* _get_somInterfaceRepository()
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,_get_somInterfaceRepository)
- (this);
- }
-
- /* method: _set_somInterfaceRepository */
- void _set_somInterfaceRepository(Repository* somInterfaceRepository)
- {
- SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,_set_somInterfaceRepository)
- (this,somInterfaceRepository);
- }
-
- /* method: somClassFromId */
- SOMClass* somClassFromId(somId classId)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somClassFromId)
- (this,classId);
- }
-
- /* method: somFindClass */
- SOMClass* somFindClass(somId classId,
- long majorVersion,
- long minorVersion)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somFindClass)
- (this,classId,majorVersion,minorVersion);
- }
-
- /* method: somFindClsInFile */
- SOMClass* somFindClsInFile(somId classId,
- long majorVersion,
- long minorVersion,
- corbastring file)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somFindClsInFile)
- (this,classId,majorVersion,minorVersion,file);
- }
-
- /* method: somSubstituteClass */
- long somSubstituteClass(corbastring origClassName,
- corbastring newClassName)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somSubstituteClass)
- (this,origClassName,newClassName);
- }
-
- /* method: somUnregisterClass */
- long somUnregisterClass(SOMClass* classObj)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somUnregisterClass)
- (this,classObj);
- }
-
- /* method: somLoadClassFile */
- SOMClass* somLoadClassFile(somId classId,
- long majorVersion,
- long minorVersion,
- corbastring file)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somLoadClassFile)
- (this,classId,majorVersion,minorVersion,file);
- }
-
- /* method: somLocateClassFile */
- corbastring somLocateClassFile(somId classId,
- long majorVersion,
- long minorVersion)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somLocateClassFile)
- (this,classId,majorVersion,minorVersion);
- }
-
- /* method: somGetInitFunction */
- corbastring somGetInitFunction()
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somGetInitFunction)
- (this);
- }
-
- /* method: somRegisterClass */
- void somRegisterClass(SOMClass* classObj)
- {
- SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somRegisterClass)
- (this,classObj);
- }
-
- /* method: somUnloadClassFile */
- long somUnloadClassFile(SOMClass* classObj)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somUnloadClassFile)
- (this,classObj);
- }
-
- /* method: _get_somRegisteredClasses */
- _IDL_SEQUENCE_SOMClass _get_somRegisteredClasses()
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,_get_somRegisteredClasses)
- (this);
- }
-
- /* method: somGetRelatedClasses */
- SOMClassMgr_SOMClassArray somGetRelatedClasses(SOMClass* classObj)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somGetRelatedClasses)
- (this,classObj);
- }
-
- /* method: somMergeInto */
- void somMergeInto(SOMObject* targetObj)
- {
- SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somMergeInto)
- (this,targetObj);
- }
-
- /* method: somRegisterClassLibrary */
- void somRegisterClassLibrary(corbastring libraryName,
- somMethodPtr libraryInitRtn)
- {
- SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somRegisterClassLibrary)
- (this,libraryName,libraryInitRtn);
- }
-
- /* method: somBeginPersistentClasses */
- void somBeginPersistentClasses()
- {
- SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somBeginPersistentClasses)
- (this);
- }
-
- /* method: somEndPersistentClasses */
- void somEndPersistentClasses()
- {
- SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somEndPersistentClasses)
- (this);
- }
-
- /* method: somJoinAffinityGroup */
- boolean somJoinAffinityGroup(SOMClass* newClass,
- SOMClass* affClass)
- {
- return SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somJoinAffinityGroup)
- (this,newClass,affClass);
- }
-
- /* method: somRegisterClassWatcher */
- void somRegisterClassWatcher(somMethodPtr callMe,
- somToken cookie)
- {
- SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somRegisterClassWatcher)
- (this,callMe,cookie);
- }
-
- /* method: somUnregisterClassWatcher */
- void somUnregisterClassWatcher(somMethodPtr callMe,
- somToken cookie)
- {
- SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somUnregisterClassWatcher)
- (this,callMe,cookie);
- }
-
- /* method: somNotifyClassWatchers */
- void somNotifyClassWatchers(SOMClass* classObj,
- somToken mt,
- long watchCode)
- {
- SOM_ResolveD(this,SOMClassMgr,SOMClassMgr,somNotifyClassWatchers)
- (this,classObj,mt,watchCode);
- }
-
- }; /* SOMClassMgr */
-
-
-
- #endif /* SOM_SOMClassMgr_xh */
-